A cell phone reading mode allows the capture of images, including images of decodable indicia, including bar codes from mobile devices, including but not limited to mobile phones and personal data terminals (PDTs). The scanning operation, as performed by a mobile device, such as a smart phone, with an integrated image capture device, such as a camera, relies on code in the operating system (OS), installed on the processor of the device. This “reading mode” of the device, i.e., the mode in which images of decodable indicia, such as bar codes, are captured, is accomplished by operating system code, which is executed on the processor. The operating system code times the light-emitting diodes (LEDs) in the display and the aimer, between two different camera frames. The first image frame has a long exposure. This exposure allows a user to read the mobile device display. The lights occur outside the image so that the image, when viewed, does not appear to flicker. The second image frame has a short exposure. This exposure is accomplished with high intensity flash LEDs.
Because reading mode, the lighting and exposure timing for scanning images including images of decodable indicia, is controlled by code in the operating system, this functionality is not flexible. The timing is operating-system specific, it is not compatible across different platforms, it is not compatible across different devices.
The timing of the light and exposure is also limited by the processor of the mobile device. When the continuous lighting is needed, the ideal control of the LEDs is an asynchronous timer. However, the flexibility is limited because the timing of the LEDs is dependent on the timers on the processor of the mobile device. The dedicated use of this timer for image capture purposes renders this system resource less available and/or unavailable for other processes within a given terminal (e.g., encoded information reading (EIR) terminals configured to read bar codes and/or other types of encoded information). Timers in the hardware layer may be in short supply or already in use by the system for other tasks.
A need exists for a method that controls the reading mode, i.e., times the lighting and exposure, by relocating this functionality to a resource outside of the processor.